*Replication code (main part) for "Making the List: Reevaluating Political Trust and Social Desirability in China" by Stephen P. Nicholson and Haifeng Huang, American Political Science Review

*Prepared in June 2022




/****** Variables

female: 0 or 1
agegroup: age group, ranging from 1 to 10
education: education level, ranging from 1 (primary school or below) to 6 (graduate school)
income: family income status, ranging from 1 to 9
ccpmember: membership in the Chinese Communist Party (0 or 1)
confucian_all: Confucian value index, ranging from 1 to 4
china: evaluation of China's current situation, ranging from 1 to 5
self_index: self-monitoring index, ranging from 1 to 5
life: life satisfication, ranging from 1 to 5
pinterest: political interest, ranging from 1 to 4

* The above variables except female and ccpmember are also dichotomized to represent high and low values for the analysis in Figures 1 and 2 in the main text*


trustlist: choices in the list question on trust in government
treat_centraltrust: treatment group for the list question on trust in the central government (0 or 1)
treat_localltrust: treatment group for the list question on trust in local government (0 or 1)
centraltrust_yn: dichotomized trust in the central government in direct questioning (0 or 1)
localtrust_yn: dichotomized trust in local government in direct questioning (0 or 1)

termlist: choices in the list question on support for the term limit removal
treat_term: treatment group for the list question on support for the term limit removal (0 or 1)
termlimit_yn: dichotomized support for the term limit removal in direct questioning (0 or 1)
termlimit_a: support for the term limit removal in direct questioning

weight_internet: post-stratification weight

******/




*************************************************
*************************************************
************        MAIN TEXT        ************
*************************************************
*************************************************



***************************
******    Table 1    ******
***************************

clear
use listexp_rep_data.dta

svyset [pw=weight_internet]

*** list experiment results ***

svy: reg trustlist treat_centraltrust if treat_centraltrust ==0 | treat_centraltrust ==1
svy: reg trustlist treat_localtrust if treat_localtrust ==0 | treat_localtrust ==1

*** direct questioning results ***

svy: mean centraltrust_yn if treat_centraltrust ==0 | treat_centraltrust ==1
svy: mean localtrust_yn if treat_localtrust ==0 | treat_localtrust ==1

clear



*****************************
******     Table 2     ******
*****************************

clear
use listexp_rep_data.dta

drop if termlimit_a ==3

svyset [pw=weight_internet] 

*** list experiment and direct questioning results for non-neutral respondents ***

svy: reg termlist treat_term 

svy: mean termlimit_yn

clear 

***** list experiment result for neutral respondents*****

clear
use listexp_rep_data.dta

keep if termlimit_a ==3

svyset [pw=weight_internet]

svy: reg termlist treat_term 

clear



****** Figures 1-2 and Tables E1-E2: See figure1_rep_r and figure2_rep_r ******




*************************************************
*************************************************
************        APPENDIX         ************
*************************************************
*************************************************


**************************
******   Table C1   ******
**************************

clear
use listexp_rep_data.dta

sum agegroup income female ccpmember education life pinterest china confucian_all self_index 

clear



**************************
******   Table C2   ******
**************************

clear
use listexp_rep_data.dta

oneway agegroup treat_trust, t 
oneway income treat_trust, t
oneway female treat_trust, t
oneway ccpmember treat_trust, t
oneway education treat_trust, t
oneway life treat_trust, t 
oneway pinterest treat_trust, t 
oneway china treat_trust, t
oneway confucian_all treat_trust, t
oneway self_index treat_trust, t 

clear



**************************
******   Table C3   ******
**************************

clear
use listexp_rep_data.dta

ttest agegroup if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest income if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest female if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest ccpmember if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest education if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest life if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest pinterest if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest china if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest confucian_all if treat_term==0 | treat_term==1, by(treat_term) unequal 
ttest self_index if treat_term==0 | treat_term==1, by(treat_term) unequal 

clear

**********



*****************************
******    Table D1     ******
*****************************

clear
use listexp_rep_data.dta

ttest trustlist_b, by(randomization) unequal
ttest trustlist_c, by(randomization) unequal
ttest termlist_b, by(randomization) unequal

clear



*****************************
******    Table D2    *******
*****************************
clear
use listexp_rep_data.dta

*** list experiment results ***

reg trustlist treat_centraltrust if treat_centraltrust ==0 | treat_centraltrust ==1
reg trustlist treat_localtrust if treat_localtrust ==0 | treat_localtrust ==1

*** direct questioning results ***

mean centraltrust_yn if treat_centraltrust ==0 | treat_centraltrust ==1
mean localtrust_yn if treat_localtrust ==0 | treat_localtrust ==1

clear



*********************************
******       Table D3      ******
*********************************

clear
use listexp_rep_data.dta

drop if termlimit_a ==3

*** list experiment and direct questioning results for non-neutral respondents ***

reg termlist treat_term 

mean termlimit_yn

clear

*** list experiment result for neutral respondents ***

clear
use listexp_rep_data.dta

keep if termlimit_a ==3

reg termlist treat_term 

clear



******************************
****** Additional Codes ******
******************************

*** calculate weight_internet based on 2018 CFPS ***

* ipfweight female young college ccpmember, gen(weight_internet2) val(51.3 48.7 66 34 85.5 14.5 88.3 11.7) maxit(60)



**********

exit
